import Vue from "vue";
import App from "./App.vue";
import router from "./router";
import store from "@/store";
import "element-ui/lib/theme-chalk/index.css";
import ElementUI from "element-ui";
import "@/api/index.js";
import VueParticles from "vue-particles";
import cookies from "vue-cookies";
import Viewer from "v-viewer";
import "viewerjs/dist/viewer.css";
import VueWorker from "vue-worker";
import "@/utils/resize";
import "@/utils/permission";
import "@/utils/autoFocus";

Vue.use(VueParticles);
Vue.use(ElementUI, { zIndex: 2000 });
Vue.use(Viewer);
Vue.use(VueWorker);

Viewer.setDefaults({
  Options: {
    inline: false,
    button: true,
    navbar: true,
    title: true,
    toolbar: true,
    tooltip: true,
    movable: true,
    zoomable: true,
    rotatable: true,
    scalable: true,
    transition: true,
    fullscreen: true,
    keyboard: true,
    url: "data-source"
  }
});

Vue.config.productionTip = false;
Vue.prototype.$cookies = cookies;
import * as echarts from "echarts";
Vue.prototype.$echarts = echarts;

import "@/permission"; // permission control
Date.prototype.Format = function(fmt) {
  var o = {
    "M+": this.getMonth() + 1, //月份
    "d+": this.getDate(), //日
    "h+": this.getHours(), //小时
    "m+": this.getMinutes(), //分
    "s+": this.getSeconds(), //秒
    "q+": Math.floor((this.getMonth() + 3) / 3), //季度
    S: this.getMilliseconds() //毫秒
  };
  if (/(y+)/.test(fmt))
    fmt = fmt.replace(
      RegExp.$1,
      (this.getFullYear() + "").substr(4 - RegExp.$1.length)
    );
  for (var k in o)
    if (new RegExp("(" + k + ")").test(fmt))
      fmt = fmt.replace(
        RegExp.$1,
        RegExp.$1.length === 1 ? o[k] : ("00" + o[k]).substr(("" + o[k]).length)
      );
  return fmt;
};

import { initThemeColor } from "./utils/themeColorClient";
import { initSetting } from "@/utils/systemConfig";

initThemeColor();
initSetting();

new Vue({
  router,
  store,
  render: h => h(App)
}).$mount("#app");
